package com.example.demo.mapper;

import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface UserMapper {

    /**
     * 用户注册
     *
     * @param user  用户
     * @return      受影响的行数
     */
    int reg(User user);

    /**
     * 通过手机号获取用户对象
     *
     * @param phone     手机号
     * @return          用户
     */
    User getUserByPhone(@Param("phone") String phone);

    /**
     *  根据用户Id获取用户对象
     *
     * @param id    用户ID
     * @return      用户
     */
    User getById(@Param("id") Integer id);

    /**
     *
     * 更新手机号或用户名或头像或密码
     * 返回受影响的行数
     */
    int update(User user);
}
